import argparse

import pandas as pd

'''
参数配置文件
'''

parser = argparse.ArgumentParser()

# 训练参数
load_path = './data/final_data/data_12.csv'
tem_data = pd.read_csv(load_path)
feature_len = int(tem_data.shape[-1])
features = [i for i in range(feature_len-1)]

parser.add_argument('--load_path', default=load_path)  # 数据集加载路径
parser.add_argument('--save_model_path', default="./results/save_model/bp_9.pkl")  # 模型保存路径
parser.add_argument('--save_loss_path', default="./results/loss/bp.png")  # loss损失曲线
parser.add_argument('--save_log', default="./results/log")  # log日志保存路径
parser.add_argument('--epochs', default=1000000, type=int)  # 训练轮数
parser.add_argument('--save_item', default=1000, type=int)  # 测试轮数
parser.add_argument('--save_loss', default=100, type=int)  # 保存损失轮数
parser.add_argument('--input_size', default=len(features), type=int)  # 输入特征的维度
parser.add_argument('--lr', default=0.2, type=float)  # learning rate 学习率
parser.add_argument('--min_loss', default=0.01, type=float)  # 最小损失阈值
parser.add_argument('--batch_size', default=64, type=int)  # batch_size
parser.add_argument('--split_ratio', default=0.8, type=float)  # 训练集和测试集划分比例
parser.add_argument('--cut', default=365, type=int)  # 训练集和测试集划分
parser.add_argument('--features', default=features)  # 输入特征列

# 测试参数
parser.add_argument('--load_model_path', default="./results/load_model/bp_12.pkl")  # 测试输入模型
parser.add_argument('--save_result_path', default="./results/save_result/预测曲线_data_12.png")  # 预测曲线

args = parser.parse_args()
